<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

        #box {
            width: 1200px;
            height: 250px;
            /* background-color: pink; */
            margin: 100px auto;
            font-size: 40px;
            text-align: center;
            line-height: 250px;
        }
    </style>

</head>

<body>
    <div id="box"></div>
    <script>
        //准备好要转换的汉字
        var arr = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九', '十'];
        var time = new Date();
        //获取时间对象中的所有需要转换的信息
        var year = time.getFullYear();
        var month = time.getMonth() + 1;
        var day = time.getDate();
        var hour = time.getHours();
        var minute = time.getMinutes();
        var second = time.getSeconds();
        var week = time.getDay();
        // console.log(week);
        /*转换成汉字 有几种情况:
        =>转换年:
        将年拆成四个数字;
        =>转换其他的:
        ==>1.10 以下的数字直接转,包含10;
        ==>2.10 以上的数字再分钟两种情况:
        ===>2.1 11-19的数转换成 十 +数字;
        ===>2.2 整20,30,40,50,都转换成汉字 + 十;
        ===>2.3 其余的数如23,45,59 都转换成 十位数字 + 十 +个位数字;
        */

        // ==>转换年
        function geshihuaTime() {
            function newYear(year) {
                var a = parseInt(year / 1000);
                var b = parseInt(year % 1000 / 100);
                var c = parseInt(year % 100 / 10);
                var d = year % 10;
                // console.log(a, b, c, d);
                return arr[a] + arr[b] + arr[c] + arr[d] + '年';
            }
            // console.log(newYear(year));
            //==>转换其他
            function timeNum(num) {
                //==>当数字是两位数的时候需要拆分数字
                var num1 = parseInt(num / 10);
                var num2 = num % 10;

                if (num <= 10) {
                    return arr[num];
                } else if (num < 20) {
                    return '十' + arr[num2];
                } else if (num % 10 === 0) {
                    return arr[num1] + '十';
                } else {
                    return arr[num1] + '十' + arr[num2];
                }
            }
            // console.log(timeNum(58));

            var str = '';
            str += newYear(year) + ' ' + timeNum(month) + '月 ' + timeNum(day) + '日 ' + timeNum(hour) + '点 ' + timeNum(minute) + '分 ' + timeNum(second) + '秒 ' + ' ';
            if (week === 0) {
                str += '周日';
            } else {
                str += '周' + timeNum(week);
            }
            // console.log(str);
            // console.log(document.querySelector('#box'));
            return box.innerText = str;
        }
        geshihuaTime();

  // ===>打开页面先执行一次
        var time = function geshihuaTime() {
            var time = new Date();
            //获取时间对象中的所有需要转换的信息
            var year = time.getFullYear();
            var month = time.getMonth() + 1;
            var day = time.getDate();
            var hour = time.getHours();
            var minute = time.getMinutes();
            var second = time.getSeconds();
            var week = time.getDay();
            // console.log(week);
            /*转换成汉字 有几种情况:
            =>转换年:
            将年拆成四个数字;
            =>转换其他的:
            ==>1.10 以下的数字直接转,包含10;
            ==>2.10 以上的数字再分钟两种情况:
            ===>2.1 11-19的数转换成 十 +数字;
            ===>2.2 整20,30,40,50,都转换成汉字 + 十;
            ===>2.3 其余的数如23,45,59 都转换成 十位数字 + 十 +个位数字;
            */

            // ==>转换年
            function newYear(year) {
                var a = parseInt(year / 1000);
                var b = parseInt(year % 1000 / 100);
                var c = parseInt(year % 100 / 10);
                var d = year % 10;
                // console.log(a, b, c, d);
                return arr[a] + arr[b] + arr[c] + arr[d] + '年';
            }
            // console.log(newYear(year));
            //==>转换其他
            function timeNum(num) {
                //==>当数字是两位数的时候需要拆分数字
                var num1 = parseInt(num / 10);
                var num2 = num % 10;

                if (num <= 10) {
                    return arr[num];
                } else if (num < 20) {
                    return '十' + arr[num2];
                } else if (num % 10 === 0) {
                    return arr[num1] + '十';
                } else {
                    return arr[num1] + '十' + arr[num2];
                }
            }
            // console.log(timeNum(58));

            var str = '';
            str += newYear(year) + ' ' + timeNum(month) + '月 ' + timeNum(day) + '日 ' + timeNum(hour) + '点 ' + timeNum(minute) + '分 ' + timeNum(second) + '秒 ' + ' ';
            if (week === 0) {
                str += '周日';
            } else {
                str += '周' + timeNum(week);
            }
            // console.log(str);
            // console.log(document.querySelector('#box'));
            return box.innerText = str;
        }
        setInterval(time, 1000)
    </script>


</body>
</html>